package com.secsbrain.cloudconsole.dal.model;

import java.io.Serializable;
import java.util.Date;

import com.baomidou.mybatisplus.annotations.IdType;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;

/**
 *
 * 工单表
 *
 */
@TableName(value = "work_sheet")
public class WorkSheet implements Serializable {

	@TableField(exist = false)
	private static final long serialVersionUID = 1L;

	/** 主键 */
	@TableId(type = IdType.AUTO)
	private Long id;

	/** 工单编号 */
	private String code;

	/** 工单描述 */
	private String description;

	/** 提交时间 */
	@TableField(value = "create_time")
	private Date createTime;

	/** 更新时间 */
	@TableField(value = "update_time")
	private Date updateTime;

	/** 提交人ID */
	@TableField(value = "creator_id")
	private Long creatorId;

	/** 提交人姓名 */
	@TableField(value = "creator_name")
	private String creatorName;

	/** 处理人ID */
	@TableField(value = "ops_id")
	private Long opsId;

	/** 处理人姓名 */
	@TableField(value = "ops_name")
	private String opsName;
	
	@TableField(value = "file_path")
	private String filePath;
	
	@TableField(value = "file_vname")
	private String fileVname;

	/** 流程实例ID */
	@TableField(value = "process_instance_id")
	private String processInstanceId;

	/** 状态：0-待受理 ，1-待处理，2-待确认，3-已关闭 */
	private Integer istatus;

	/** 优先级：0-一般，1-重要，2-紧急 */
	private Integer ilevel;

	/** 类型：-1为其他，0-服务器 ，1-自动化发布，2-域名，3-修改配置，4-软件安装 */
	private Integer itype;
	
	/** 子类型 */
	@TableField(value = "sub_type")
	private Integer subType;
	
	@TableField(exist = false)
	private Integer[] statusArray;
	
	@TableField(exist = false)
	private Integer[] excludeStatusArray;
	
	@TableField(exist = false)
	private String message;//留言

	@TableField(exist = false)
	private String startDate;
	
	@TableField(exist = false)
	private String endDate;
	
	@TableField(exist = false)
	private WorkServerApply workServerApply;
	
	@TableField(exist = false)
	private WorkDeployAccess workDeployAccess;
	
	@TableField(exist = false)
	private WorkDeployOther workDeployOther;

	@TableField(exist = false)
	private WorkBootGroupAccess workBootGroupAccess;

	@TableField(exist = false)
	private WorkOpsCommon workOpsCommon;

	public Long getId() {
		return this.id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getCode() {
		return this.code;
	}

	public void setCode(String code) {
		this.code = code;
	}

	public String getDescription() {
		return this.description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public Date getCreateTime() {
		return this.createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Date getUpdateTime() {
		return this.updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	public Long getCreatorId() {
		return this.creatorId;
	}

	public void setCreatorId(Long creatorId) {
		this.creatorId = creatorId;
	}

	public String getCreatorName() {
		return this.creatorName;
	}

	public void setCreatorName(String creatorName) {
		this.creatorName = creatorName;
	}

	public Long getOpsId() {
		return this.opsId;
	}

	public void setOpsId(Long opsId) {
		this.opsId = opsId;
	}

	public String getOpsName() {
		return this.opsName;
	}

	public void setOpsName(String opsName) {
		this.opsName = opsName;
	}

	public String getProcessInstanceId() {
		return this.processInstanceId;
	}

	public void setProcessInstanceId(String processInstanceId) {
		this.processInstanceId = processInstanceId;
	}

	public Integer getIstatus() {
		return this.istatus;
	}

	public void setIstatus(Integer istatus) {
		this.istatus = istatus;
	}

	public Integer getIlevel() {
		return this.ilevel;
	}

	public void setIlevel(Integer ilevel) {
		this.ilevel = ilevel;
	}

	public Integer getItype() {
		return this.itype;
	}

	public void setItype(Integer itype) {
		this.itype = itype;
	}

	public String getStartDate() {
		return startDate;
	}

	public void setStartDate(String startDate) {
		this.startDate = startDate;
	}

	public String getEndDate() {
		return endDate;
	}

	public void setEndDate(String endDate) {
		this.endDate = endDate;
	}

	public Integer getSubType() {
		return subType;
	}

	public void setSubType(Integer subType) {
		this.subType = subType;
	}

	public WorkServerApply getWorkServerApply() {
		return workServerApply;
	}

	public void setWorkServerApply(WorkServerApply workServerApply) {
		this.workServerApply = workServerApply;
	}

	public WorkDeployAccess getWorkDeployAccess() {
		return workDeployAccess;
	}

	public void setWorkDeployAccess(WorkDeployAccess workDeployAccess) {
		this.workDeployAccess = workDeployAccess;
	}

	public WorkBootGroupAccess getWorkBootGroupAccess() {
		return workBootGroupAccess;
	}

	public void setWorkBootGroupAccess(WorkBootGroupAccess workBootGroupAccess) {
		this.workBootGroupAccess = workBootGroupAccess;
	}

	public WorkOpsCommon getWorkOpsCommon() {
		return workOpsCommon;
	}

	public void setWorkOpsCommon(WorkOpsCommon workOpsCommon) {
		this.workOpsCommon = workOpsCommon;
	}

	public String getMessage() {
		return message;
	}

	public void setMessage(String message) {
		this.message = message;
	}

	public Integer[] getStatusArray() {
		return statusArray;
	}

	public void setStatusArray(Integer[] statusArray) {
		this.statusArray = statusArray;
	}

	public WorkDeployOther getWorkDeployOther() {
		return workDeployOther;
	}

	public void setWorkDeployOther(WorkDeployOther workDeployOther) {
		this.workDeployOther = workDeployOther;
	}

	public Integer[] getExcludeStatusArray() {
		return excludeStatusArray;
	}

	public void setExcludeStatusArray(Integer[] excludeStatusArray) {
		this.excludeStatusArray = excludeStatusArray;
	}

	public String getFilePath() {
		return filePath;
	}

	public void setFilePath(String filePath) {
		this.filePath = filePath;
	}

	public String getFileVname() {
		return fileVname;
	}

	public void setFileVname(String fileVname) {
		this.fileVname = fileVname;
	}
	
}
